package com.ygqh.baby.mapper;

import com.ygqh.baby.ao.WholeSaleRecordType;
import com.ygqh.baby.po.YgWholesalerPrebillRecordDetail;
import com.ygqh.baby.po.YgWholesalerPrebillRecordDetailExample;
import com.ygqh.baby.ao.QueryInfo;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Param;

/**
 * @author Ss
 */
public interface YgWholesalerPrebillRecordDetailMapper {
	int countByExample(YgWholesalerPrebillRecordDetailExample example);

	int deleteByExample(YgWholesalerPrebillRecordDetailExample example);

	int deleteByPrimaryKey(Long id);

	int insert(YgWholesalerPrebillRecordDetail record);

	int insertSelective(YgWholesalerPrebillRecordDetail record);

	List<YgWholesalerPrebillRecordDetail> selectByExample(YgWholesalerPrebillRecordDetailExample example);

	YgWholesalerPrebillRecordDetail selectByPrimaryKey(Long id);

	int updateByExampleSelective(@Param("record") YgWholesalerPrebillRecordDetail record, @Param("example") YgWholesalerPrebillRecordDetailExample example);

	int updateByExample(@Param("record") YgWholesalerPrebillRecordDetail record, @Param("example") YgWholesalerPrebillRecordDetailExample example);

	int updateByPrimaryKeySelective(YgWholesalerPrebillRecordDetail record);

	int updateByPrimaryKey(YgWholesalerPrebillRecordDetail record);

	int countSuper(@Param("wholesalerName") String wholesalerName, @Param("detailCode") String detailCode,
				   @Param("prebillCode") String prebillCode, @Param("startDate") Date startDate, @Param("endDate") Date endDate,
				   @Param("recordType")String recordType);

	List<YgWholesalerPrebillRecordDetail> selectSuper(@Param("queryInfo") QueryInfo queryInfo, @Param("wholesalerName") String wholesalerName, @Param("detailCode") String detailCode,
													  @Param("prebillCode") String prebillCode, @Param("startDate") Date startDate, @Param("endDate") Date endDate,
													  @Param("recordType")String recordType);

	int insertBatch(@Param("list") List<YgWholesalerPrebillRecordDetail> insertList);

	List<YgWholesalerPrebillRecordDetail> selectByPrebillCode(@Param("prebillCode") String prebillCode);
}



